A Logic Programming Language with Lambda-Abstraction, Function Variables, and Simple Unification

نویسنده

  • Dale Miller
چکیده

It has been argued elsewhere that a logic programming language with function variables and λ-abstractions within terms makes a good meta-programming language, especially when an object-language contains notions of bound variables and scope. The λProlog logic programming language and the related Elf and Isabelle systems provide meta-programs with both function .variables and λ-abstractions by containing implementations of higher-order unification. This paper presents a logic programming language, called Lλ, that also contains both function variables and λ-abstractions, although certain restrictions are placed on occurrences of function variables. As a result of these restrictions, an implementation of Lλ does not need to implement full higher order unification. Instead, an extension to first-order unification that respects bound variable names and scopes is all that is required. Such unification problems are shown to be decidable and to possess most general unifiers when unifiers exist. A unification algorithm and logic programming interpreter are described and proved correct. Several examples of using Lλ as a meta-programming language are presented. Comments University of Pennsylvania Department of Computer and Information Science Technical Report No. MSCIS-90-54. This technical report is available at ScholarlyCommons: http://repository.upenn.edu/cis_reports/576 A Logic Programming Language with Lambda Abstraction, Function Variables and Simple Unification MS-CIS-90-54 LINC LAB 182

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Logic Programming Language with Lambda - Abstraction , Function Variables , and Simple Uni cationDale

It has been argued elsewhere that a logic programming language with function variables and-abstractions within terms makes a good meta-programming language, especially when an object-language contains notions of bound variables and scope. The Prolog logic programming language and the related Elf and Isabelle systems provide meta-programs with both function variables and-abstractions by containi...

متن کامل

Unification Of Simply Typed Lambda-Terms As Logic Programming

The unification of simply typed λ-terms modulo the rules of ßand η-conversions is often called "higherorder" unification because of the possible presence of variables of functional type. This kind of unification is undecidable in general and if unifiers exist, most general unifiers may not exist. In this paper, we show that such unification problems can be coded as a query of the logic programm...

متن کامل

Unification of Simply Typed Lamda-Terms as Logic Programming

The unification of simply typed λ-terms modulo the rules of ßand η-conversions is often called "higherorder" unification because of the possible presence of variables of functional type. This kind of unification is undecidable in general and if unifiers exist, most general unifiers may not exist. In this paper, we show that such unification problems can be coded as a query of the logic programm...

متن کامل

A Logic Programming Approach to Manipulating Formulas and Programs

First-order Horn clause logic can be extended to a higher-order setting in which function and predicate symbols can be variables and terms are replaced with simply typed λ-terms. For such a logic programming language to be complete in principle, it must incorporate higher-order unification. Although higher-order unification is more complex than usual first-order unification, its availability ma...

متن کامل

Unification and Anti-Unification in the Calculus of Constructions

We present algorithms for unification and antiunification in the Calculus of Constructions, where occurrences of free variables (the variables subject to instantiation) are restricted to higher-order patterns, a notion investigated for the simply-typed λ-calculus by Miller. Most general unifiers and least common antiinstances are shown to exist and are unique up to a simple equivalence. The uni...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1989